/**
 * 
 */

package CCT220_Aula15_Exercicio01_13106;


import javax.swing.JOptionPane;


/**
 * </br>******************************
 * </br>Project: CCT220
 * </br>Package: CCT220_Aula15_Exercicio01_13106
 * </br>Class: LimiteDisciplina
 * </br>Last Change: 05/10/2011 20:30:24
 * </br>Description: View of Disciplina
 * </br>******************************</br>
 * 
 * @author marcel
 * @author 13106
 * 
 */
public class LimiteDisciplina {
	private final ControleDisciplina objCtrDisc = new ControleDisciplina();


	/**
	 * </br>******************************
	 * </br>Package: CCT220_Aula15_Exercicio01_13106
	 * </br>Class: LimiteDisciplina
	 * </br>Method: capturaDados
	 * </br>Last Change: 05/10/2011 20:31:19
	 * </br>Description: Capture the user's options
	 * </br>******************************</br>
	 * 
	 */
	public void capturaDados() {

		int escolha = 0;
		String escolhaInformada = "";
		// Variáveis utilizadas para recuperar as informações da interface do
		// usuário
		int codigo = 0;
		String nome = "";
		int cargaHoraria = 0;
		try {
			objCtrDisc.recuperaDisciplinas();
			do {
				do {
					try {
						escolhaInformada = JOptionPane
						        .showInputDialog("Escolha uma opção do menu:\n"
						                + "[1] Adiciona disciplina\n"
						                + "[2] Lista disciplinas\n"
						                + "[3] Gravar no disco\n"
						                + "[4] Finaliza");
						escolha = Integer.parseInt(escolhaInformada);
					} catch (Exception exc) {
					}
				} while ((escolha < 1) || (escolha > 4));
				switch (escolha) {
					case 1:
						try {
							// Requisita o Código
							codigo = Integer.parseInt(JOptionPane
							        .showInputDialog("Informe o código"));
							// Requisita o Nome
							nome = JOptionPane
							        .showInputDialog("Informe o nome");
							// Requisita a Carga Horária
							cargaHoraria = Integer
							        .parseInt(JOptionPane
							                .showInputDialog("Informe o carga horária"));
							// Adiciona o objeto para a lista de pacientes
							objCtrDisc.insereDisciplina(codigo, nome,
							        cargaHoraria);
						} catch (Exception exc) {
							JOptionPane.showMessageDialog(null, exc
							        .getMessage(), "Erro",
							        JOptionPane.ERROR_MESSAGE);
						}
						break;
					case 2:
						JOptionPane.showMessageDialog(null, objCtrDisc
						        .getListaDisciplinas(),
						        "Relação de Disciplinas",
						        JOptionPane.INFORMATION_MESSAGE);
						break;
					case 3:
						objCtrDisc.gravaDisciplinas();
						break;
					case 4:
						System.exit(0);
				}
			} while (true);
		} catch (Exception exc) {
			JOptionPane.showMessageDialog(null, exc.getMessage(), "Erro",
			        JOptionPane.ERROR_MESSAGE);
		}
	}


	/**
	 * </br>******************************
	 * </br>Package: CCT220_Aula15_Exercicio01_13106
	 * </br>Class: LimiteDisciplina
	 * </br>Method: main
	 * </br>Last Change: 05/10/2011 20:31:24
	 * </br>Description: Start the program
	 * </br>******************************</br>
	 * 
	 * @param par
	 */
	public static void main(String par[]) {

		LimiteDisciplina objLimDisc = new LimiteDisciplina();
		objLimDisc.capturaDados();
	}
}
